package org.example.ch2;

import io.reactivex.rxjava3.core.Observable;

public class Main9 {
    public static void main(String[] args) {
        // 响应式流的拼接
//        Observable.concat(
//                Observable.just(1,2,3,4,5),
//                Observable.fromArray(new Integer[] {11,12,13,14}),
//                Observable.create(
//                        subscriber -> {
//                            for (int i = 0; i < 5; i++) {
//                                subscriber.onNext(100 + i);
//                            }
//                            subscriber.onComplete();
//                        }
//                )
//        ).subscribe(
//                System.out::println,
//                System.err::println,
//                () -> System.out.println("流结束")
//        );


        Observable.concat(
                Observable.just(1,2,3,4,5),
                Observable.fromArray(new Integer[] {11,12,13,14}),
                Observable.create(
                        subscriber -> {
                            for (int i = 0; i < 5; i++) {
                                subscriber.onNext(100 + i);
                            }
                            subscriber.onComplete();
                        }
                )
        ).forEach(
                System.out::println
        );
    }
}
